package org.apache.commons.compress.compressors.gzip; class GzipCompressorOutputStream { void a() { int a;
a=0;// .class public Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;
a=0;// .super Lorg/apache/commons/compress/compressors/CompressorOutputStream;
a=0;// .source "GzipCompressorOutputStream.java"
a=0;// 
a=0;// 
a=0;// # instance fields
a=0;// .field private final a:Ljava/io/OutputStream;
a=0;// 
a=0;// .field private final b:Ljava/util/zip/Deflater;
a=0;// 
a=0;// .field private final c:[B
a=0;// 
a=0;// .field private d:Z
a=0;// 
a=0;// .field private final e:Ljava/util/zip/CRC32;
a=0;// 
a=0;// 
a=0;// # direct methods
a=0;// .method private a()V
a=0;//     .locals 4
a=0;// 
a=0;//     .prologue
a=0;//     const/4 v3, 0x0
a=0;// 
a=0;//     .line 165
a=0;//     #v3=(Null);
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     iget-object v1, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->c:[B
a=0;// 
a=0;//     #v1=(Reference,[B);
a=0;//     iget-object v2, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->c:[B
a=0;// 
a=0;//     #v2=(Reference,[B);
a=0;//     array-length v2, v2
a=0;// 
a=0;//     #v2=(Integer);
a=0;//     invoke-virtual {v0, v1, v3, v2}, Ljava/util/zip/Deflater;->deflate([BII)I
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     .line 166
a=0;//     #v0=(Integer);
a=0;//     if-lez v0, :cond_0
a=0;// 
a=0;//     .line 167
a=0;//     iget-object v1, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->a:Ljava/io/OutputStream;
a=0;// 
a=0;//     iget-object v2, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->c:[B
a=0;// 
a=0;//     #v2=(Reference,[B);
a=0;//     invoke-virtual {v1, v2, v3, v0}, Ljava/io/OutputStream;->write([BII)V
a=0;// 
a=0;//     .line 169
a=0;//     :cond_0
a=0;//     #v2=(Conflicted);
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// 
a=0;// # virtual methods
a=0;// .method public close()V
a=0;//     .locals 3
a=0;// 
a=0;//     .prologue
a=0;//     .line 200
a=0;//     iget-boolean v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->d:Z
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-nez v0, :cond_2
a=0;// 
a=0;//     .line 201
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0}, Ljava/util/zip/Deflater;->finished()Z
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-nez v0, :cond_1
a=0;// 
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0}, Ljava/util/zip/Deflater;->finish()V
a=0;// 
a=0;//     :goto_0
a=0;//     #v0=(Conflicted);
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0}, Ljava/util/zip/Deflater;->finished()Z
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-nez v0, :cond_0
a=0;// 
a=0;//     invoke-direct {p0}, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->a()V
a=0;// 
a=0;//     goto :goto_0
a=0;// 
a=0;//     :cond_0
a=0;//     const/16 v0, 0x8
a=0;// 
a=0;//     #v0=(PosByte);
a=0;//     invoke-static {v0}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     #v0=(Reference,Ljava/nio/ByteBuffer;);
a=0;//     sget-object v1, Ljava/nio/ByteOrder;->LITTLE_ENDIAN:Ljava/nio/ByteOrder;
a=0;// 
a=0;//     #v1=(Reference,Ljava/nio/ByteOrder;);
a=0;//     invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->order(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
a=0;// 
a=0;//     iget-object v1, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->e:Ljava/util/zip/CRC32;
a=0;// 
a=0;//     invoke-virtual {v1}, Ljava/util/zip/CRC32;->getValue()J
a=0;// 
a=0;//     move-result-wide v1
a=0;// 
a=0;//     #v1=(LongLo);v2=(LongHi);
a=0;//     long-to-int v1, v1
a=0;// 
a=0;//     #v1=(Integer);
a=0;//     invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->putInt(I)Ljava/nio/ByteBuffer;
a=0;// 
a=0;//     iget-object v1, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v1=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v1}, Ljava/util/zip/Deflater;->getTotalIn()I
a=0;// 
a=0;//     move-result v1
a=0;// 
a=0;//     #v1=(Integer);
a=0;//     invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->putInt(I)Ljava/nio/ByteBuffer;
a=0;// 
a=0;//     iget-object v1, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->a:Ljava/io/OutputStream;
a=0;// 
a=0;//     #v1=(Reference,Ljava/io/OutputStream;);
a=0;//     invoke-virtual {v0}, Ljava/nio/ByteBuffer;->array()[B
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     invoke-virtual {v1, v0}, Ljava/io/OutputStream;->write([B)V
a=0;// 
a=0;//     .line 202
a=0;//     :cond_1
a=0;//     #v0=(Conflicted);v1=(Conflicted);v2=(Conflicted);
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0}, Ljava/util/zip/Deflater;->end()V
a=0;// 
a=0;//     .line 203
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->a:Ljava/io/OutputStream;
a=0;// 
a=0;//     invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
a=0;// 
a=0;//     .line 204
a=0;//     const/4 v0, 0x1
a=0;// 
a=0;//     #v0=(One);
a=0;//     iput-boolean v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->d:Z
a=0;// 
a=0;//     .line 206
a=0;//     :cond_2
a=0;//     #v0=(Boolean);
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// .method public flush()V
a=0;//     .locals 1
a=0;// 
a=0;//     .prologue
a=0;//     .line 195
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->a:Ljava/io/OutputStream;
a=0;// 
a=0;//     #v0=(Reference,Ljava/io/OutputStream;);
a=0;//     invoke-virtual {v0}, Ljava/io/OutputStream;->flush()V
a=0;// 
a=0;//     .line 196
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// .method public write(I)V
a=0;//     .locals 4
a=0;// 
a=0;//     .prologue
a=0;//     const/4 v3, 0x1
a=0;// 
a=0;//     #v3=(One);
a=0;//     const/4 v2, 0x0
a=0;// 
a=0;//     .line 130
a=0;//     #v2=(Null);
a=0;//     new-array v0, v3, [B
a=0;// 
a=0;//     #v0=(Reference,[B);
a=0;//     and-int/lit16 v1, p1, 0xff
a=0;// 
a=0;//     #v1=(Integer);
a=0;//     int-to-byte v1, v1
a=0;// 
a=0;//     #v1=(Byte);
a=0;//     aput-byte v1, v0, v2
a=0;// 
a=0;//     invoke-virtual {p0, v0, v2, v3}, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->write([BII)V
a=0;// 
a=0;//     .line 131
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// .method public write([B)V
a=0;//     .locals 2
a=0;// 
a=0;//     .prologue
a=0;//     .line 140
a=0;//     const/4 v0, 0x0
a=0;// 
a=0;//     #v0=(Null);
a=0;//     array-length v1, p1
a=0;// 
a=0;//     #v1=(Integer);
a=0;//     invoke-virtual {p0, p1, v0, v1}, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->write([BII)V
a=0;// 
a=0;//     .line 141
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// .method public write([BII)V
a=0;//     .locals 2
a=0;// 
a=0;//     .prologue
a=0;//     .line 150
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0}, Ljava/util/zip/Deflater;->finished()Z
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-eqz v0, :cond_0
a=0;// 
a=0;//     .line 151
a=0;//     new-instance v0, Ljava/io/IOException;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/io/IOException;);
a=0;//     const-string v1, "Cannot write more data, the end of the compressed data stream has been reached"
a=0;// 
a=0;//     #v1=(Reference,Ljava/lang/String;);
a=0;//     invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v0=(Reference,Ljava/io/IOException;);
a=0;//     throw v0
a=0;// 
a=0;//     .line 153
a=0;//     :cond_0
a=0;//     #v0=(Boolean);v1=(Uninit);
a=0;//     if-lez p3, :cond_2
a=0;// 
a=0;//     .line 154
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0, p1, p2, p3}, Ljava/util/zip/Deflater;->setInput([BII)V
a=0;// 
a=0;//     .line 156
a=0;//     :goto_0
a=0;//     #v0=(Conflicted);
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->b:Ljava/util/zip/Deflater;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/Deflater;);
a=0;//     invoke-virtual {v0}, Ljava/util/zip/Deflater;->needsInput()Z
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-nez v0, :cond_1
a=0;// 
a=0;//     .line 157
a=0;//     invoke-direct {p0}, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->a()V
a=0;// 
a=0;//     goto :goto_0
a=0;// 
a=0;//     .line 160
a=0;//     :cond_1
a=0;//     iget-object v0, p0, Lorg/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream;->e:Ljava/util/zip/CRC32;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/CRC32;);
a=0;//     invoke-virtual {v0, p1, p2, p3}, Ljava/util/zip/CRC32;->update([BII)V
a=0;// 
a=0;//     .line 162
a=0;//     :cond_2
a=0;//     #v0=(Conflicted);
a=0;//     return-void
a=0;// .end method
}}
